#include <bits/stdc++.h>
using namespace std;

const int N=2e5+5;
int n,t,wh[N],a[N],color[N],ma;
long long dp[N][2];
void dfs(int now,int la,int lb,int sum)
{
    if (now==n+1)
    {
        /*int la=0,lb=0;
        int ans=0;
        for (int i=1;i<=n;i++)
        {
            if (color[i]==1)
            {
                if (a[la]==a[i]) ans+=a[i];
                la=i;
            }
            if (color[i]==2)
            {
                if (a[lb]==a[i]) ans+=a[i];
                lb=i;
            }
        }*/
        ma=max(ma,sum);
        return;
    }
    for (int i=1;i<=2;i++)
    {
        color[now]=i;
        int tot=sum;
        if (i==1)
        {
            if (a[now]==a[la]) tot+=a[now ];
            dfs(now+1,now,lb,tot);
        }
        else
        {
            if (a[now]==a[lb]) tot+=a[now];
            dfs(now+1,la,now,tot);
        }
        //dfs(now+1);
    }
}
int main()
{
    freopen("color.in","r",stdin);
    freopen("color.out","w",stdout);
    ios::sync_with_stdio(false);
    cin.tie(0);
    cin>>t;
    while(t--)
    {
        cin>>n;
        ma=0;
        //dp[0][1]=0;
        //dp[0][0]=0;
        for (int i=1;i<=n;i++)
        {
            cin>>a[i];
        }
        /*for (int i=1;i<=n;i++)
        {
            for (int j=1;j<i;j++)
            {
                int tot=0;
                for (int k=j+1;k+1<i;k++)
                {
                    if (a[k]==a[k+1]) tot+=a[k+1];
                }
                if (a[i]==a[j])
                {
                    dp[i][1]=max(dp[j][1])
                }
            }
        }*/
        dfs(1,0,0,0);
        cout<<ma<<'\n';
    }
    return 0;
}
